spec:
  versions:
    - name: v1alpha1
      schema: &schema
        openAPIV3Schema:
          description: |
            Параметры подключения к Ceph-кластеру и настройка StorageClass'ов.
          properties:
            spec:
              properties:
                clusterID:
                  description: |
                    FSID/UUID Ceph-кластера

                    Получить FSID/UUID Ceph-кластера можно с помощью команды `ceph fsid`.
                userID:
                  description: |
                    Имя пользователя без `client.`.
                userKey:
                  description: |
                    Ключ авторизации, соответствующий `userID`.
                monitors:
                  description: |
                    Список IP-адресов ceph-mon'ов в формате `10.0.0.10:6789`.
                rbd:
                  properties:
                    storageClasses:
                      description: |
                        Описание StorageClass'ов для Rados Block Device (RBD).
                      items:
                        properties:
                          namePostfix:
                            description: |
                              Часть имени StorageClass после `-`.

                              В качестве первой части используется имя из custom resource `CephCSIDriver`.
                          pool:
                            description: |
                              Название пула, в котором будут создаваться RBD-образы.
                          reclaimPolicy:
                            description: |
                              Политика возврата для Persistent Volume.

                              [Подробнее...](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#reclaiming)
                          allowVolumeExpansion:
                            description: |
                              Включает возможность изменять размер тома, редактируя соответствующий объект PersistentVolumeClaim.

                              [Подробнее...](https://kubernetes.io/docs/concepts/storage/storage-classes/#allow-volume-expansion)
                          mountOptions:
                            description: |
                              Список опций монтирования.
                          defaultFSType:
                            description: |
                              Файловая система по умолчанию для создаваемых Persistent Volumes.
                            enum:
                              - ext4
                              - xfs
                cephfs:
                  properties:
                    subvolumeGroup:
                      description: |
                        Имя группы для subvolumes CephFS.
                    storageClasses:
                      description: |
                        Описание StorageClass'ов для CephFS.
                      items:
                        properties:
                          namePostfix:
                            description: |
                              Часть имени StorageClass после `-`.

                              В качестве первой части используется имя из custom resource `CephCSIDriver`.
                          pool:
                            description: |
                              Название пула, в котором будут создаваться RBD-образы.
                          reclaimPolicy:
                            description: |
                              Политика возврата для Persistent Volume.
                          allowVolumeExpansion:
                            description: |
                              Включает возможность изменять размер тома, редактируя соответствующий объект PersistentVolumeClaim.
                          mountOptions:
                            description: |
                              Список опций монтирования.
                          fsName:
                            description: |
                              Имя файловой системы CephFS.
